package com.itfenghuang.day04;

import java.io.UnsupportedEncodingException;
import java.util.Scanner;

public class A02_字符串 {
    public static void main(String[] args) throws UnsupportedEncodingException {
//      1.键盘录入字符串
//            Scanner sc = new Scanner(System.in);
//            String str=sc.nextLine();
//            System.out.println("接受的字符串"+str);
//      2.创建字符串的三种方式  构造方法 new 关键字的过程
//            2.1直接赋值
//              String str="abcdefg";
//            2.2通过 new 关键字 创建对象
//            String s = new String();//创建一个空串
//            char[] car={'a','b','c','d'};
//            String s1 = new String(car);
//            2.3 将字符数组 转换成 字符串
//            char[] chs={'a','b','c','d'};
//            String s2=new String(chs);
//            System.out.println(s2);

//            2.4 将 byte 数组 转换成 字符串
//            byte[] by={48,49,65,68,97};
//            String s3=new String(by);
//            System.out.println(s3);

//        3.字符串的比较 == equels

//        1. 字符串常用方法
//            1. 切割字符串  str.split ("按照什么切"),返回切割之后的字符串数组
//            String str="1999-12-22";
//            String[] strs = str.split("-");//字符串数组
//            for (int i = 0; i <strs.length ; i++) {
//                System.out.println(strs[i]);
//            }

//        2. 获取字符串长度 str.length
//            System.out.println(str.length());
//            System.out.println(strs.length);//获取字符串数组长度

//        3. 返回指定索引处(下标) 的char 值 字符串名字.charAt(5)
//            System.out.println(str.charAt(1));
//             使用charAt 循环输出 字符串
//            for(int i=0;i<str.length();i++){
//                System.out.print(str.charAt(i));
//            }

//        4. 将字符串拆分为字符数组后返回
//        String str = "1999-12-22";
//        char[] chars = str.toCharArray();
//        for (int i = 0; i < chars.length; i++) {
//            System.out.println(chars[i]);
//        }
//        5. 大写转小写  字符串名字.toLowerCase()
//           小写转大写  字符串名字.toUpperCase()
//            String str="abSSSdefg";
//            System.out.println(str.toLowerCase());
//            System.out.println(str.toUpperCase());

//        6. 判断字符串中是否包含某个子串 字符串名字.contains()
//             String str="abSSSdefssssg";
//             System.out.println(str.contains("abb"));

//        7. 截取字符串 ,从哪里开始 到 哪里结束,
//              如果传入一个参数默认到最后结束
//              字符串名字.substring(1,3)   左闭右开
//                 String str="1999-12-22";
//                 System.out.print(str.substring(5));
//                 System.out.println(str.substring(0, 5));

//        8. 替换 将旧字符串替换成新的字符串,会返回一个替换之后的字符串
//                不会改变原来的字符串     字符串名.replace()
//        String str="1999-12-22";
//        System.out.println(str.replace("-", "/"));


//        9.判断是否以某个子串开头或者结尾
//        字符串名.endswith()  字符串名.startswith()
//            String str="1999-12-22";
//            System.out.println(str.startsWith("99"));
//            System.out.println(str.endsWith("22"));

//        10. 找出子串对应的下标 如果没有返回-1  字符串名.indexOf()
//                str.indexOf('2',3) 第一个参数 要查找的字符串  第二个参数 从哪一个下标开始查
//            String str="1999-12-22";
//            System.out.println(str.indexOf("9"));
//            System.out.println(str.indexOf('2', 9));
//            System.out.println(str.indexOf("2", 3));

//        11. 判断字符串是否为空 或者空白单元格
//        字符串名.isEmpty() :  空串
//            String str="";//空串  ""里面加空格 则不为空
//            System.out.println(str.isEmpty());//判断字符串是否为空串

//        12.去掉左右空格 和 \n trim: 去掉首尾的空白字符,包括\t, \r\n
//                String str ="  asvf  ss  ";
//                System.out.println(str.trim());
//                 使用替换去除字符串中间的空格
//                 System.out.println(str.replace("  ", "2"));


//        13. 将字符串转换成int类型 Integer.parseInt(字符串名)
//             String str="22";
//             System.out.println(Integer.parseInt(str));

//        14. 可以转换 字符串的编码格  getBytes
//            String xx="尼玛卓玛";
//            byte[] bytes = xx.getBytes();// 字符串 转换 字节数组
//            System.out.println(bytes);
//
//            String s = new String(bytes);//字节数组 转换成 字符串
//            System.out.println(s);

//        15. 字节数组  和  字符串  相互转换  设置 转换时候的编码集

//            String str = "你";
//            byte[] gbks = str.getBytes("GBK");
//            System.out.println(gbks.length);
//
//            String s = new String(gbks,"gbk");
//            System.out.println(s);


        }


    }
